SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS OFF
GO
CREATE PROCEDURE [dbo].[SP_TMDOCU_CLIE_Q08]
/*-------------------------------------------------------*/
/*---Empresa               OFISIS S.A.                --*/
/*---Cliente               SANTILLANA                 --*/
/*---Sistema               Tesoreria                  --*/
/*---M¸dulo                Empresa                    --*/
/*---Programa              Estado de Cuenta por Cobrar--*/
/*---Script                SP_TMDOCU_CLIE_Q08.sql     --*/
/*---Nombre SP             SP_TMDOCU_CLIE_Q08         --*/
/*---Desarrollado por      Eduardo Vivar Pomiano      --*/
/*---Fecha Creaci¸n        03/01/2001                 --*/
/*---Base Datos            ORACLE			       --*/
/*---Versi¸n               8.0                        --*/
/*---Invoca a SP                                      --*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Modificado 1 por	   REYNALDO MENACHO LUYO     	--*/
/*---Fecha Modificaci¸n    05/09/2001			--*/ 
/*---Detalle Modificaci¸n  Adaptacion para reporte de   --*/
/*---			   Estado de Cuenta por Cobrar  --*/
/*---			   (Original: Kardex)		--*/
/*-------------------------------------------------------*/

/*-------------------------------------------------------*/
/*---Drop Proc SP_TMDOCU_CLIE_Q08                      --*/
/*---Grant all on SP_TMDOCU_CLIE_Q08 to public       --*/ 
/*---SP_TMDOCU_CLIE_Q08 '01', '2011227392200' , "'BOL',  'CHE',   'FAC',  'FAE',  'LET',  'N/C',  'N/D',  'RSP',  'TIC'", '2001/09/08','DOL', '2',3.5,'D','1', 'S'  --*/
/*-------------------------------------------------------*/

 @ISCO_MONE_DEFA TD_VC_003,
 @ISST_CONS TD_VC_001,
 @ISCO_EMPR TD_VC_002,  
 @ISCO_CLIE TD_VC_020, 
 @ISDE_CODI Varchar(500), 
 @IDFE_REPO TD_DT_001,
 @ISCO_MONE_REPO TD_VC_003,
 @ISFA_CAMB TD_VC_001,
 @INFA_CAMB numeric(9,4),
 @ISTI_REPO TD_VC_001,
 @ISDE_ORDE TD_VC_001,
 @INFA_CMPR_MERC TD_NU_009_004
	As
CREATE TABLE #TWDOCU_CLIE_Q07_1 
 ( CO_EMPR      varchar(3) NULL,
   CO_TIPO_DOCU	varchar(3)  NULL ,
   NU_DOCU_CLIE	varchar(20)  NULL,
   CO_CLIE	varchar(20) NULL ,
   FE_EMIS	datetime NULL,
   FE_VENC  	datetime NULL,
   CO_MONE	varchar(03) NULL,
   FA_TIPO_CAMB	numeric(9,4) NULL,
   IM_CXCB_NACI	numeric(16,4) NULL DEFAULT 0,
   IM_CXCB_EXTR	numeric(16,4) NULL DEFAULT 0,
   IM_PAGO_NACI	numeric(16,4) NULL DEFAULT 0,
   IM_PAGO_EXTR	numeric(16,4) NULL DEFAULT 0,
   TI_DETA	varchar(1) NULL)

CREATE TABLE #TWDOCU_CLIE_Q07_2 
 ( CO_EMPR      varchar(3) NULL,
   CO_TIPO_DOCU	varchar(3)  NULL ,
   NU_DOCU_CLIE	varchar(20)  NULL,
   CO_CLIE	varchar(20) NULL ,
   FE_EMIS	datetime NULL,
   FE_VENC	datetime NULL,
   IM_DEUD_SOLE	numeric(16,4) NULL DEFAULT 0,
   IM_DEUD_DOLA	numeric(16,4) NULL DEFAULT 0,
   IM_DEVN_SOLE	numeric(16,4) NULL DEFAULT 0,
   IM_DEVN_DOLA	numeric(16,4) NULL DEFAULT 0,
   CO_MONE_DEFA 	varchar(03) NULL,	
   CO_MONE_REPO	varchar(03) NULL)

DECLARE 

@VSDE_LETR  	TD_VC_100,
@VSCO_EMPR	TD_VC_002,
@VSCO_CLIE  	TD_VC_020,
@VSNU_CANJ  	TD_VC_008,
@VSNU_RENO  	TD_VC_008,
@VSDE_ORDE	TD_VC_050,
@VSDE_ORDE_EMPR TD_VC_050,
@VSDE_SELE	VARCHAR(600),
@VSDE_FROM	TD_VC_100,
@VSDE_WHER	VARCHAR(200),
@VSDE_GROU		TD_VC_100,

--@VSDE_CODI 	VARCHAR(500)

@CSCO_TIPO_DOCU TD_VC_003,
@CSCO_EMPR  	TD_VC_002,
@CSCO_CLIE  	TD_VC_020,
@CSNU_CANJ  	TD_VC_008,
@CSNU_RENO  	TD_VC_008,
@CSNU_LETR_CLIE	TD_VC_008,

@OSTI_DOCU 	TD_VC_003,
@OSTI_DOCU_0001	TD_VC_003,
@OSTI_DOCU_0002	TD_VC_003



 IF @ISST_CONS = 'S'
    BEGIN
	SELECT @VSDE_SELE = 'SELECT T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, T2.NO_AUXI, ROUND(SUM(T1.IM_DEUD_SOLE)/1000, 2),
		ROUND(SUM(T1.IM_DEUD_DOLA)/1000,2),  ROUND(SUM(T1.IM_DEVN_SOLE)/1000, 2), ROUND(SUM(T1.IM_DEVN_DOLA)/1000, 2),
		Max(T2.IM_LIMI_CRED)/1000, Max(T2.IM_CRED_EXED)/1000, MAX(T2.DE_OBSE), MAX(T1.CO_MONE_DEFA), MAX(T1.CO_MONE_REPO) '
	SELECT @VSDE_FROM = 'FROM #TWDOCU_CLIE_Q07_2 T1, TMAUXI_EMPR T2 '

	SELECT @VSDE_WHER = 
		'WHERE 	T1.CO_EMPR = T2.CO_EMPR
		AND 	T1.CO_CLIE = T2.CO_AUXI_EMPR
		AND 	T2.TI_AUXI_EMPR = "C" '
	SELECT @VSDE_GROU = 'GROUP BY T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, T2.NO_AUXI '
    END
 ELSE
    BEGIN
	SELECT @VSDE_SELE = 'SELECT T1.CO_EMPR, T3.DE_NOMB, T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, T2.NO_AUXI, ROUND(SUM(T1.IM_DEUD_SOLE)/1000, 2),
		ROUND(SUM(T1.IM_DEUD_DOLA)/1000,2),  ROUND(SUM(T1.IM_DEVN_SOLE)/1000, 2), ROUND(SUM(T1.IM_DEVN_DOLA)/1000, 2),
		Max(T2.IM_LIMI_CRED)/1000, Max(T2.IM_CRED_EXED)/1000, MAX(T2.DE_OBSE), MAX(T1.CO_MONE_DEFA), MAX(T1.CO_MONE_REPO) ' 
	SELECT @VSDE_FROM = 'FROM #TWDOCU_CLIE_Q07_2 T1, TMAUXI_EMPR T2, TMEMPR T3 '
 	SELECT @VSDE_WHER = 
		'WHERE 	T1.CO_EMPR = T2.CO_EMPR
		AND 	T1.CO_CLIE = T2.CO_AUXI_EMPR
		AND 	T2.TI_AUXI_EMPR = "C"
		AND 	T2.CO_EMPR = T3.CO_EMPR '
	SELECT @VSDE_GROU = 'GROUP BY T1.CO_EMPR, T3.DE_NOMB, T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, T2.NO_AUXI '
    END

 IF @ISDE_ORDE = '1'
     IF @ISST_CONS = 'S'
	SELECT @VSDE_ORDE = ' Order By 1, 4, 3 '
     ELSE	
	SELECT @VSDE_ORDE = ' Order By 1, 3, 6, 5 '
 ELSE
     IF @ISST_CONS = 'S'
	SELECT @VSDE_ORDE = ' Order By 1, 3 '
     ELSE
	SELECT @VSDE_ORDE = ' Order By 1, 3, 5 '


-- TIPOS DE DETALLE(TI_DETA = '1' AL '7')
--1.- DOCS EMITIDOS EN ESOS MESES					
--2.- PAGOS BANCOS / CAJA
--3.- APLICACIONES DE NCR A DOCUMENTOS
--4.- CANJES
--5.- RENOVACIONES
--6.- APLICACION DE DOC. A ANTICIPOS
--8.- ANTICIPOS( SIN APLICACIONES, SALDO = IMPORTE DEPOSITO )
--7.- ANTICIPOS( CON APLICACION, SALDOS)

--1.- DOCS EMITIDOS EN ESOS MESES
-- TMDOCU_CLIE

INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, FE_VENC, 
CO_MONE, FA_TIPO_CAMB, IM_CXCB_NACI, IM_CXCB_EXTR, TI_DETA)
Select T1.CO_EMPR, T1.CO_TIPO_DOCU , T1.NU_DOCU_CLIE , T1.CO_CLIE, T1.FE_EMIS, T1.FE_VENC, 
T1.CO_MONE, Patindex(@ISFA_CAMB, '2')*T1.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T1.CO_MONE, 'DOL')))))*( PatIndex(T2.ST_SIGN,'S') - PatIndex(T2.ST_SIGN,'N') )*
T1.IM_TOTA,
PatIndex(T1.CO_MONE, 'DOL')*( PatIndex(T2.ST_SIGN,'S') - PatIndex(T2.ST_SIGN,'N') )*
T1.IM_TOTA,
'1'
From  TMDOCU_CLIE T1, TTDOCU_CNTB T2
Where T1.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T1.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND PatIndex( + '%'+T1.CO_TIPO_DOCU+'%', + @ISDE_CODI )>0 
And T1.FE_EMIS <= @IDFE_REPO
And T1.CO_ESTA_DOCU != 'ANU'
AND T1.CO_TIPO_DOCU = T2.TI_DOCU

-- And t1.CO_ESTA_DOCU != 'CNJ', QUITE ESTA CONDICION 

-- TMLETR_CLIE

--EXECUTE SP_TTDOCU_CNTB_Q01 6, @OSTI_DOCU

If PatIndex('%LET%', @ISDE_CODI) > 0 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, FE_VENC,  
CO_MONE, FA_TIPO_CAMB, IM_CXCB_NACI, IM_CXCB_EXTR, TI_DETA)
Select T1.CO_EMPR, 'LET', T1.NU_LETR_CLIE, T1.CO_CLIE, T1.FE_EMIS, T1.FE_VENC,
T1.CO_MONE, Patindex(@ISFA_CAMB, '2')*T1.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T1.CO_MONE, 'DOL')))))*T1.IM_TOTA,
PatIndex(T1.CO_MONE, 'DOL')*T1.IM_TOTA, '1'
From   TMLETR_CLIE T1
Where T1.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T1.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
And T1.FE_EMIS <= @IDFE_REPO
And T1.CO_ESTA_DOCU != 'ANU'


--2.- PAGOS BANCOS / CAJA
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,

( ( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*PatIndex(T1.TI_MOVI_BANC,'I')-
  ( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') )*PatIndex(T1.TI_MOVI_BANC,'E')
)*(
PatIndex(T1.ST_CIER_DOCU, 'N')*
PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_CONV_DOCU +
PatIndex(T1.ST_CIER_DOCU, 'S')* PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_SALD_DOCU ),

( ( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*PatIndex(T1.TI_MOVI_BANC,'I')-
  ( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') )*PatIndex(T1.TI_MOVI_BANC,'E')
)*(
PatIndex(T1.ST_CIER_DOCU, 'N')*
PatIndex(T4.CO_MONE, 'DOL')*T1.IM_CONV_DOCU+
PatIndex(T1.ST_CIER_DOCU, 'S')*
PatIndex(T4.CO_MONE, 'DOL')*T1.IM_SALD_DOCU), 

'2'
From  TDMOVI_BANC T1, TCMOVI_BANC T2, TMCNTA_BANC T3, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)

AND PatIndex( +'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI)>0 
And    T1.TI_ENTI = 'C'
And    T2.FE_OPER  <= @IDFE_REPO
And    T2.TI_SITU = 'ACT' 

And    T1.CO_EMPR = T2.CO_EMPR  
And    T1.CO_UNID_CONC = T2.CO_UNID_CONC
And    T1.CO_BANC = T2.CO_BANC  
And    T1.NU_CNTA_BANC  = T2.NU_CNTA_BANC  
And    T1.AA_BNCO = T2.AA_BNCO
And    T1.MM_BNCO = T2.MM_BNCO 
And    T1.TI_MOVI_BANC  = T2.TI_MOVI_BANC 
And    T1.NU_COMP_BANC = T2.NU_COMP_BANC

And    T1.CO_EMPR = T3.CO_EMPR  
And    T1.CO_BANC = T3.CO_BANC  
And    T1.NU_CNTA_BANC  = T3.NU_CNTA_BANC

AND	 T1.CO_EMPR = T4.CO_EMPR
AND 	 T1.TI_DOCU_ENTI = T4.CO_TIPO_DOCU
AND 	 T1.NU_DOCU_ENTI = T4.NU_DOCU_CLIE
	
AND 	 T4.CO_TIPO_DOCU = T5.TI_DOCU
 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,

( ( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*PatIndex(T1.TI_MOVI,'I')-
  ( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') )*PatIndex(T1.TI_MOVI,'E')
)*(
PatIndex(T1.ST_CIER_DOCU, 'N')*
PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_CONV_DOCU +
PatIndex(T1.ST_CIER_DOCU, 'S')*
PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_SALD_DOCU),

( ( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*PatIndex(T1.TI_MOVI,'I')-
  ( PatIndex(T5.ST_SIGN,'N') - PatIndex(T5.ST_SIGN,'S') )*PatIndex(T1.TI_MOVI,'E')
)*(
PatIndex(T1.ST_CIER_DOCU, 'N')*
PatIndex(T4.CO_MONE, 'DOL')*T1.IM_CONV_DOCU+
PatIndex(T1.ST_CIER_DOCU, 'S')*
PatIndex(T4.CO_MONE, 'DOL')*T1.IM_SALD_DOCU), 

'2'
From   TDMOVI_CAJA T1, TCMOVI_CAJA T2, TMCAJA T3, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND PatIndex(+'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI)>0 
And    T1.TI_ENTI = 'C'
And    T2.FE_OPER  <= @IDFE_REPO
And    T2.TI_SITU = 'ACT' 

And    T1.CO_EMPR = T2.CO_EMPR  
And    T1.CO_CAJA = T2.CO_CAJA
And    T1.AA_CAJA = T2.AA_CAJA
And    T1.MM_CAJA = T2.MM_CAJA 
And    T1.TI_MOVI = T2.TI_MOVI
And    T1.NU_COMP_CAJA = T2.NU_COMP_CAJA

And    T1.CO_EMPR = T3.CO_EMPR  
And    T1.CO_CAJA = T3.CO_CAJA

And	 T1.CO_EMPR = T4.CO_EMPR
AND	 T1.TI_DOCU_ENTI = T4.CO_TIPO_DOCU
And	 T1.NU_DOCU_ENTI = T4.NU_DOCU_CLIE

AND 	 T4.CO_TIPO_DOCU = T5.TI_DOCU

-- PAGOS LETRAS 
If PatIndex('%LET%', @ISDE_CODI) > 0 
	BEGIN
	INSERT INTO #TWDOCU_CLIE_Q07_1 
	(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
	CO_MONE, FA_TIPO_CAMB,
	IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
	Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,
	T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
	 
	(PatIndex(T1.TI_MOVI_BANC,'I') - PatIndex(T1.TI_MOVI_BANC,'E'))*(
	PatIndex(T1.ST_CIER_DOCU, 'N')*
	PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_CONV_DOCU +
	PatIndex(T1.ST_CIER_DOCU, 'S')*
	PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_SALD_DOCU),

	(PatIndex(T1.TI_MOVI_BANC,'I') - PatIndex(T1.TI_MOVI_BANC,'E'))*(
	PatIndex(T1.ST_CIER_DOCU, 'N')*
	PatIndex(T4.CO_MONE, 'DOL')*T1.IM_CONV_DOCU+
	PatIndex(T1.ST_CIER_DOCU, 'S')*
	PatIndex(T4.CO_MONE, 'DOL')*T1.IM_SALD_DOCU), 

	'2'
	From  TDMOVI_BANC T1, TCMOVI_BANC T2, TMCNTA_BANC T3, TMLETR_CLIE T4
	Where  T4.CO_EMPR = @ISCO_EMPR
	AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
	And    T1.TI_ENTI = 'C'
	And    T2.FE_OPER  <= @IDFE_REPO
	And    T2.TI_SITU = 'ACT' 

	And    T1.CO_EMPR = T2.CO_EMPR  
	And    T1.CO_UNID_CONC = T2.CO_UNID_CONC
	And    T1.CO_BANC = T2.CO_BANC  
	And    T1.NU_CNTA_BANC  = T2.NU_CNTA_BANC  
	And    T1.AA_BNCO = T2.AA_BNCO
	And    T1.MM_BNCO = T2.MM_BNCO 
	And    T1.TI_MOVI_BANC  = T2.TI_MOVI_BANC 
	And    T1.NU_COMP_BANC = T2.NU_COMP_BANC

	And    T1.CO_EMPR = T3.CO_EMPR  
	And    T1.CO_BANC = T3.CO_BANC  
	And    T1.NU_CNTA_BANC  = T3.NU_CNTA_BANC

	AND	 T1.CO_EMPR = T4.CO_EMPR
	AND	 T1.TI_DOCU_ENTI = 'LET'
	AND 	 T1.NU_DOCU_ENTI = T4.NU_LETR_CLIE


	INSERT INTO #TWDOCU_CLIE_Q07_1 
	(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
	CO_MONE, FA_TIPO_CAMB,
	IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
	Select T1.CO_EMPR, T1.TI_DOCU_ENTI, T1.NU_DOCU_ENTI, T1.CO_ENTI, T2.FE_OPER,
	T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,

	(PatIndex(T1.TI_MOVI,'I') - PatIndex(T1.TI_MOVI,'E'))*(
	PatIndex(T1.ST_CIER_DOCU, 'N')*
	PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_CONV_DOCU +
	PatIndex(T1.ST_CIER_DOCU, 'S')*
	PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*T1.IM_SALD_DOCU),

	(PatIndex(T1.TI_MOVI,'I') - PatIndex(T1.TI_MOVI,'E'))*(
	PatIndex(T1.ST_CIER_DOCU, 'N')*
	PatIndex(T4.CO_MONE, 'DOL')*T1.IM_CONV_DOCU+
	PatIndex(T1.ST_CIER_DOCU, 'S')*
	PatIndex(T4.CO_MONE, 'DOL')*T1.IM_SALD_DOCU), 

	'2'
	From   TDMOVI_CAJA T1, TCMOVI_CAJA T2, TMCAJA T3, TMLETR_CLIE T4
	Where  T4.CO_EMPR = @ISCO_EMPR
	AND    ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
	And    T1.TI_ENTI = 'C'
	And    T2.FE_OPER  <= @IDFE_REPO
	And    T2.TI_SITU = 'ACT' 

	And    T1.CO_EMPR = T2.CO_EMPR  
	And    T1.CO_CAJA = T2.CO_CAJA
	And    T1.AA_CAJA = T2.AA_CAJA
	And    T1.MM_CAJA = T2.MM_CAJA 
	And    T1.TI_MOVI = T2.TI_MOVI
	And    T1.NU_COMP_CAJA = T2.NU_COMP_CAJA

	And    T1.CO_EMPR = T3.CO_EMPR  
	And    T1.CO_CAJA = T3.CO_CAJA

	And	 T1.CO_EMPR = T4.CO_EMPR
	AND	 T1.TI_DOCU_ENTI = 'LET'
	And	 T1.NU_DOCU_ENTI = T4.NU_LETR_CLIE

	END


--3.- APLICACIONES

-- DOCUMENTOS
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_CLIE, T1.CO_CLIE, T1.FE_AMAR,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*(
   PatIndex(T1.CO_MONE, T4.CO_MONE) +
   PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T1.CO_MONE, T4.CO_MONE)))))*T1.FA_TIPO_CAMB)*
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_COBR_DEST,
PatIndex( T4.CO_MONE, 'DOL')*(
   PatIndex(T1.CO_MONE, T4.CO_MONE) +
   PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T1.CO_MONE, T4.CO_MONE)))))/T1.FA_TIPO_CAMB)*
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_COBR_DEST,
'3'
From   TCAMAR_NCCL T1 , TDAMAR_NCCL T2, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND    ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND    PatIndex(+'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI) > 0 
AND    T1.CO_EMPR =   T4.CO_EMPR
AND    T4.CO_TIPO_DOCU != 'N/C'
And    T1.FE_AMAR  <= @IDFE_REPO
AND    T1.TI_SITU = 'ACT'
AND    T2.CO_TIDO_DEST = T4.CO_TIPO_DOCU 
AND    T2.NU_DOCU_DEST = T4.NU_DOCU_CLIE 
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.NU_AMAR = T2.NU_AMAR
AND    T2.CO_EMPR = T4.CO_EMPR
AND    T1.CO_CLIE = T4.CO_CLIE
AND    T2.CO_TIDO_DEST = T4.CO_TIPO_DOCU
AND    T2.NU_DOCU_DEST = T4.NU_DOCU_CLIE
AND	 T4.CO_ESTA_DOCU != 'ANU' 
And    T4.NU_REND_GAST IS NULL
AND	 T4.CO_TIPO_DOCU = T5.TI_DOCU

-- NOTAS DE CREDITO APLICADAS 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_CLIE, T1.CO_CLIE, T1.FE_AMAR,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*(
   PatIndex(T1.CO_MONE, T4.CO_MONE) +
   PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T1.CO_MONE, T4.CO_MONE)))))*T1.FA_TIPO_CAMB)*
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_COBR_ORIG,
PatIndex(T4.CO_MONE, 'DOL')*(
   PatIndex(T1.CO_MONE, T4.CO_MONE) +
   PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T1.CO_MONE, T4.CO_MONE)))))/T1.FA_TIPO_CAMB)*
(PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_COBR_ORIG,
'3'
From   TCAMAR_NCCL T1 , TDAMAR_NCCL T2, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND    ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND    PatIndex(+'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI) > 0 
AND    T1.CO_EMPR = T4.CO_EMPR
AND    T4.CO_TIPO_DOCU = 'N/C'
And    T1.FE_AMAR <= @IDFE_REPO
AND    T1.TI_SITU = 'ACT'
AND    T2.CO_TIDO_ORIG = T4.CO_TIPO_DOCU 
AND    T2.NU_DOCU_ORIG = T4.NU_DOCU_CLIE 
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.NU_AMAR = T2.NU_AMAR
AND    T2.CO_EMPR = T4.CO_EMPR
AND    T1.CO_CLIE = T4.CO_CLIE
AND    T2.CO_TIDO_ORIG = T4.CO_TIPO_DOCU
AND    T2.NU_DOCU_ORIG = T4.NU_DOCU_CLIE
	  
AND    T4.CO_ESTA_DOCU != 'ANU' 
And    T4.NU_REND_GAST IS NULL
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU 

--4.- CANJES

-- SOLO MUESTRO LOS DOCUMENTOS QUE SE CANJEAN, NO LAS LETRAS GENERADAS
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_CLIE, T1.CO_CLIE, T1.FE_CANJ, 
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_CANJ_MDOC,
PatIndex(T4.CO_MONE, 'DOL')*( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_CANJ_MDOC,
'4'
From  TCCANJ_CLIE T1 , TDCANJ_CLIE T2, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND   ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND   PatIndex(+'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI) > 0 
And    T1.CO_EMPR =  T4.CO_EMPR
And    T1.FE_CANJ <= @IDFE_REPO
AND    T1.TI_SITU != 'ANU'
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.CO_CLIE = T2.CO_CLIE
AND    T1.NU_CANJ = T2.NU_CANJ
AND    T2.CO_EMPR = T4.CO_EMPR
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU 
AND    T2.NU_DOCU_CLIE = T4.NU_DOCU_CLIE 
AND    T4.CO_ESTA_DOCU != 'ANU' 
And    T4.NU_REND_GAST IS NULL
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU  

If PatIndex('%LET%', @ISDE_CODI) > 0 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, 'LET', T4.NU_LETR_CLIE, T1.CO_CLIE, T1.FE_CANJ, 
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_CANJ_MDOC,
PatIndex(T4.CO_MONE, 'DOL')*( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
T2.IM_CANJ_MDOC,
'4'
From  TCCANJ_CLIE T1 , TDCANJ_CLIE T2, -- (INDEX = IX_TDCANJ_CLIE_01)
      TMLETR_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND    ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
And    T1.CO_EMPR =   T4.CO_EMPR
And    T1.FE_CANJ  <= @IDFE_REPO
AND    T1.TI_SITU != 'ANU'
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.CO_CLIE = T2.CO_CLIE
AND    T1.NU_CANJ = T2.NU_CANJ
AND    T2.CO_EMPR = T4.CO_EMPR
AND    T2.NU_DOCU_CLIE = T4.NU_LETR_CLIE 
AND    T2.CO_TIPO_DOCU = 'LET'
AND    T2.CO_TIPO_DOCU = T5.TI_DOCU  
AND    T4.CO_ESTA_DOCU != 'ANU' 


--5.- RENOVACIONES

-- SOLO MUESTRO LOS DOCUMENTOS QUE SE RENUEVAN, NO LAS LETRAS GENERADAS
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_CLIE, T1.CO_CLIE, T1.FE_RENO,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
(T2.IM_RENO_MDOC),
PatIndex(T4.CO_MONE, 'DOL')*( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
(T2.IM_RENO_MDOC),
'5'
From   TCRENO_CLIE T1 , TDRENO_CLIE T2, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND PatIndex(+'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI) > 0 
AND    T1.CO_EMPR =   T4.CO_EMPR
And    T1.FE_RENO <=  @IDFE_REPO
AND    T1.TI_SITU != 'ANU'
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.CO_CLIE = T2.CO_CLIE
AND    T1.NU_RENO = T2.NU_RENO
AND    T2.CO_EMPR = T4.CO_EMPR
AND    T2.CO_TIPO_DOCU = T4.CO_TIPO_DOCU 
AND    T2.NU_DOCU_CLIE = T4.NU_DOCU_CLIE 
AND    T4.CO_ESTA_DOCU != 'ANU' 
And    T4.NU_REND_GAST IS NULL
AND    T4.CO_TIPO_DOCU = T5.TI_DOCU

If PatIndex('%LET%', @ISDE_CODI) > 0 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, 'LET', T4.NU_LETR_CLIE, T1.CO_CLIE, T1.FE_RENO,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*(T2.IM_RENO_MDOC),
PatIndex(T4.CO_MONE, 'DOL')*(T2.IM_RENO_MDOC), 
'5'
From   TCRENO_CLIE T1 , TDRENO_CLIE T2, TMLETR_CLIE T4
Where  T4.CO_EMPR = @ISCO_EMPR
AND    ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND    T1.CO_EMPR =   T4.CO_EMPR
And    T1.FE_RENO  <= @IDFE_REPO
AND    T1.TI_SITU != 'ANU'
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.CO_CLIE = T2.CO_CLIE
AND    T1.NU_RENO = T2.NU_RENO
AND    T2.CO_EMPR = T4.CO_EMPR
AND    T2.NU_DOCU_CLIE = T4.NU_LETR_CLIE 
AND    T2.CO_TIPO_DOCU = 'LET'
AND    T4.CO_ESTA_DOCU != 'ANU'



--6.- APLICACION DE DOCUMENTOS A ANTICIPOS

-- SOLO MUESTRO LOS DOCUMENTOS QUE SE APLICAN
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, T4.CO_TIPO_DOCU, T4.NU_DOCU_CLIE, T4.CO_CLIE, T1.FE_AMAR,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex(T2.ST_CIER_DOCU, 'N')*
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
(T2.IM_CONV_DOCU) + PatIndex(T2.ST_CIER_DOCU, 'S')*
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
(T2.IM_SALD_DOCU),
PatIndex(T2.ST_CIER_DOCU, 'N')*
PatIndex(T4.CO_MONE, 'DOL')*
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
(T2.IM_CONV_DOCU)+
PatIndex(T2.ST_CIER_DOCU, 'S')*
PatIndex(T4.CO_MONE, 'DOL')*
( PatIndex(T5.ST_SIGN,'S') - PatIndex(T5.ST_SIGN,'N') )*
(T2.IM_SALD_DOCU),
'6'
From   TCAMAR_ANTC T1 , TDAMAR_ANTC T2, TMDOCU_CLIE T4, TTDOCU_CNTB T5
Where  T4.CO_EMPR = @ISCO_EMPR
AND  ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND   PatIndex(+'%'+T4.CO_TIPO_DOCU+'%',+ @ISDE_CODI) > 0 
And    T1.FE_AMAR  <= @IDFE_REPO
And    T2.FE_AMAR_DETA  <= @IDFE_REPO
AND    T1.TI_SITU != 'ANU'
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.NU_AMAR = T2.NU_AMAR
AND	 T2.CO_EMPR =   T4.CO_EMPR
AND    T2.TI_ENTI = 'C'
AND    T2.TI_DOCU_ENTI = T4.CO_TIPO_DOCU 
AND    T2.NU_DOCU_ENTI = T4.NU_DOCU_CLIE 
AND	 T4.CO_ESTA_DOCU != 'ANU' 
And    T4.NU_REND_GAST IS NULL
AND	 T4.CO_TIPO_DOCU = T5.TI_DOCU

If PatIndex('%LET%', @ISDE_CODI) > 0 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
SELECT T1.CO_EMPR, 'LET', T4.NU_LETR_CLIE, T4.CO_CLIE, T2.FE_AMAR_DETA,
T4.CO_MONE, Patindex(@ISFA_CAMB, '2')*T4.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
PatIndex(T2.ST_CIER_DOCU, 'N')*
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*
(T2.IM_CONV_DOCU)+
PatIndex(T2.ST_CIER_DOCU, 'S')*
PatIndex( '0', LTRIM(RTRIM(STR(PatIndex(T4.CO_MONE, 'DOL')))))*
(T2.IM_SALD_DOCU),
PatIndex(T2.ST_CIER_DOCU, 'N')*
PatIndex(T4.CO_MONE, 'DOL')*
(T2.IM_CONV_DOCU)+
PatIndex(T2.ST_CIER_DOCU, 'S')*
PatIndex(T4.CO_MONE, 'DOL')*
(T2.IM_SALD_DOCU), 
'6'
From   TCAMAR_ANTC T1 , TDAMAR_ANTC T2, TMLETR_CLIE T4
Where  T4.CO_EMPR = @ISCO_EMPR
AND    ((@ISCO_CLIE IS NOT NULL AND RTRIM(T4.CO_CLIE) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
And    T1.FE_AMAR <= @IDFE_REPO
And    T2.FE_AMAR_DETA  <= @IDFE_REPO
AND    T1.TI_SITU != 'ANU'
AND    T1.CO_EMPR = T2.CO_EMPR  
AND    T1.NU_AMAR = T2.NU_AMAR
AND	 T2.CO_EMPR =   T4.CO_EMPR
AND	 T2.TI_ENTI = 'C'
AND    T2.CO_ENTI = T4.CO_CLIE
AND    T2.TI_DOCU_ENTI = 'LET'
AND    T2.NU_DOCU_ENTI = T4.NU_LETR_CLIE 
AND	 T4.CO_ESTA_DOCU != 'ANU'


--7.- ANTICIPOS - PAGOS BANCOS 

-- ANTICIPOS SIN APLICACION

INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
Select T2.CO_EMPR, T2.CO_TIPO_DOCU, T2.NU_DOCU_BANC, T2.CO_ENTI, T2.FE_OPER,
T3.CO_MONE, Patindex(@ISFA_CAMB, '2')*T2.FA_TIPO_CAMB + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,

PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T3.CO_MONE, 'DOL')))))*T2.IM_MOVI,
PatIndex(T3.CO_MONE, 'DOL')*T2.IM_MOVI, 
'7'
From  TCMOVI_BANC T2, TMCNTA_BANC T3,  TTTIPO_OPER T5
Where  T2.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T2.CO_ENTI) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND PatIndex(+'%'+T2.CO_TIPO_DOCU+'%',+ @ISDE_CODI)>0
And    T2.TI_MOVI_BANC = 'I' 
And    T2.TI_ENTI = 'C'
And    T2.FE_OPER  <= @IDFE_REPO
And    T2.TI_SITU = 'ACT' 

And    T2.CO_EMPR = T3.CO_EMPR  
And    T2.CO_BANC = T3.CO_BANC  
And    T2.NU_CNTA_BANC  = T3.NU_CNTA_BANC
AND	   T2.CO_EMPR = T5.CO_EMPR
AND    T2.CO_TIPO_OPER = T5.CO_TIPO_OPER
AND    T5.ST_AUXI_0002 = 'S'
AND	 NOT EXISTS ( SELECT T6.CO_EMPR
			FROM TCAMAR_ANTC T6
			WHERE T6.TI_SITU = 'ACT'
			AND T6.FE_AMAR <= @IDFE_REPO
			AND	 T2.CO_EMPR = T6.CO_EMPR
			And    T2.CO_BANC = T6.CO_BANC  
			And    T2.NU_CNTA_BANC  = T6.NU_CNTA_BANC
			And    T2.AA_BNCO = T6.AA_BNCO
			And    T2.MM_BNCO = T6.MM_BNCO
			And    T2.NU_COMP_BANC = T6.NU_COMP_BANC )  

--8.- ANTICIPOS - PAGOS BANCOS 
-- ANTICIPO CON APLICACION 
INSERT INTO #TWDOCU_CLIE_Q07_1 
(CO_EMPR, CO_TIPO_DOCU, NU_DOCU_CLIE, CO_CLIE, FE_EMIS, 
CO_MONE, FA_TIPO_CAMB,
IM_PAGO_NACI, IM_PAGO_EXTR, TI_DETA)
Select T2.CO_EMPR, T2.CO_TIPO_DOCU, T2.NU_DOCU_BANC, T2.CO_ENTI, MAX(T2.FE_OPER),
T3.CO_MONE, Patindex(@ISFA_CAMB, '2')*MAX(T2.FA_TIPO_CAMB) + Patindex(@ISFA_CAMB, '1')*@INFA_CAMB,
MAX(PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T3.CO_MONE, 'DOL')))))*T2.IM_MOVI) -
ISNULL( SUM( PatIndex('0', LTRIM(RTRIM(STR(PatIndex(T3.CO_MONE, 'DOL')))))*T7.IM_DETA_NEGA ), 0),
MAX(PatIndex(T3.CO_MONE, 'DOL')*T2.IM_MOVI) - 
ISNULL( SUM( PatIndex(T3.CO_MONE, 'DOL')*T7.IM_DETA_NEGA ), 0), 
'8'

From  TCMOVI_BANC T2
Inner Join  TMCNTA_BANC T3
On   T2.CO_EMPR = T3.CO_EMPR  
And    T2.CO_BANC = T3.CO_BANC  
And    T2.NU_CNTA_BANC  = T3.NU_CNTA_BANC
Inner Join TTTIPO_OPER T5
On	 T2.CO_EMPR = T5.CO_EMPR
AND 	 T2.CO_TIPO_OPER = T5.CO_TIPO_OPER
AND    T5.ST_AUXI_0002 = 'S'
Inner Join  TCAMAR_ANTC T6
On	 T2.CO_EMPR = T6.CO_EMPR
And    T2.CO_BANC = T6.CO_BANC  
And    T2.NU_CNTA_BANC  = T6.NU_CNTA_BANC
And    T2.AA_BNCO = T6.AA_BNCO
And    T2.MM_BNCO = T6.MM_BNCO
And    T2.NU_COMP_BANC = T6.NU_COMP_BANC
AND    T6.TI_SITU = 'ACT'
And    T6.FE_AMAR  <= @IDFE_REPO
Left Outer Join TDAMAR_ANTC T7
On	 T6.CO_EMPR = T7.CO_EMPR 
AND 	 T6.NU_AMAR = T7.NU_AMAR
And      T7.FE_AMAR_DETA  <= @IDFE_REPO
Where  T2.CO_EMPR = @ISCO_EMPR
AND ((@ISCO_CLIE IS NOT NULL AND RTRIM(T2.CO_ENTI) = RTRIM(@ISCO_CLIE)) OR @ISCO_CLIE IS NULL)
AND PatIndex(+'%'+T2.CO_TIPO_DOCU+'%',+ @ISDE_CODI)>0
And    T2.TI_MOVI_BANC = 'I' 
And    T2.TI_ENTI = 'C'
And    T2.TI_SITU = 'ACT' 

 GROUP BY T2.CO_EMPR, T2.CO_TIPO_DOCU, T2.NU_DOCU_BANC, T2.CO_ENTI, T3.CO_MONE, 
	   T2.CO_BANC, T2.NU_CNTA_BANC, T2.NU_COMP_BANC  


	UPDATE #TWDOCU_CLIE_Q07_1
	SET IM_CXCB_NACI = IM_CXCB_EXTR * (PATINDEX(@ISFA_CAMB,'1') * @INFA_CAMB + 
					  PATINDEX(@ISFA_CAMB,'2')*FA_TIPO_CAMB),
    	IM_PAGO_NACI = IM_PAGO_EXTR * (PATINDEX(@ISFA_CAMB,'1') * @INFA_CAMB + 
					  PATINDEX(@ISFA_CAMB,'2')*FA_TIPO_CAMB)
	WHERE CO_MONE = 'DOL'


	UPDATE #TWDOCU_CLIE_Q07_1
	SET IM_CXCB_EXTR = IM_CXCB_NACI /  (PATINDEX(@ISFA_CAMB,'1') * @INFA_CAMB + 
					  PATINDEX(@ISFA_CAMB,'2')*FA_TIPO_CAMB),
    	IM_PAGO_EXTR = IM_PAGO_NACI /  (PATINDEX(@ISFA_CAMB,'1') * @INFA_CAMB + 
					  PATINDEX(@ISFA_CAMB,'2')*FA_TIPO_CAMB)
	WHERE CO_MONE = @ISCO_MONE_DEFA


	INSERT INTO #TWDOCU_CLIE_Q07_2(CO_EMPR, CO_CLIE, CO_TIPO_DOCU, NU_DOCU_CLIE, FE_EMIS, FE_VENC, 
		IM_DEUD_SOLE, IM_DEUD_DOLA, CO_MONE_DEFA, CO_MONE_REPO)
	SELECT CO_EMPR, CO_CLIE, CO_TIPO_DOCU, NU_DOCU_CLIE, MIN(FE_EMIS), MAX(FE_VENC),
		SUM(IM_CXCB_NACI)- SUM(IM_PAGO_NACI), SUM(IM_CXCB_EXTR)- SUM(IM_PAGO_EXTR), 
		@ISCO_MONE_DEFA, @ISCO_MONE_REPO
	FROM #TWDOCU_CLIE_Q07_1
	GROUP BY CO_EMPR, CO_CLIE, CO_TIPO_DOCU, NU_DOCU_CLIE
	HAVING (SUM(IM_CXCB_NACI)- SUM(IM_PAGO_NACI) != 0
	AND   SUM(IM_CXCB_EXTR)- SUM(IM_PAGO_EXTR) != 0)

	INSERT INTO #TWDOCU_CLIE_Q07_2(CO_EMPR, CO_CLIE, CO_TIPO_DOCU, NU_DOCU_CLIE, FE_EMIS, FE_VENC, 
		IM_DEVN_SOLE, IM_DEVN_DOLA)
	SELECT CO_EMPR, CO_CLIE, CO_TIPO_DOCU, NU_DOCU_CLIE, MIN(FE_EMIS), MAX(FE_VENC),
		SUM(IM_CXCB_NACI)- SUM(IM_PAGO_NACI), SUM(IM_CXCB_EXTR)- SUM(IM_PAGO_EXTR)
	FROM #TWDOCU_CLIE_Q07_1
	GROUP BY CO_EMPR, CO_CLIE, CO_TIPO_DOCU, NU_DOCU_CLIE
	HAVING (SUM(IM_CXCB_NACI)- SUM(IM_PAGO_NACI) != 0
	AND   SUM(IM_CXCB_EXTR)- SUM(IM_PAGO_EXTR) != 0)
	AND MAX(FE_VENC) <= @IDFE_REPO
	AND MAX(FE_VENC) IS NOT NULL

IF @ISCO_EMPR IS NULL
	Execute ( @VSDE_SELE+@VSDE_FROM+@VSDE_WHER+@VSDE_GROU+@VSDE_ORDE)
ELSE
	IF @ISTI_REPO = 'R'
 	    Execute ( @VSDE_SELE+@VSDE_FROM+@VSDE_WHER+@VSDE_GROU+@VSDE_ORDE)
 	ELSE
	    Execute ( 'SELECT T1.CO_EMPR, T3.DE_NOMB, T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, 
		T2.NO_AUXI, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE, ROUND(SUM(T1.IM_DEUD_SOLE)/1000, 2),
		ROUND(SUM(T1.IM_DEUD_DOLA)/1000,2),  ROUND(SUM(T1.IM_DEVN_SOLE)/1000, 2), ROUND(SUM(T1.IM_DEVN_DOLA)/1000, 2),
		Max(T2.IM_LIMI_CRED)/1000, Max(T2.IM_CRED_EXED)/1000, MAX(T2.DE_OBSE), MAX(T1.CO_MONE_DEFA), MAX(T1.CO_MONE_REPO) 
		'+@VSDE_FROM+@VSDE_WHER+'
		GROUP BY T1.CO_EMPR, T3.DE_NOMB, T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, T2.NO_AUXI, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE
		ORDER BY T1.CO_EMPR, T3.DE_NOMB, T2.TI_CLIE, T2.DE_TIPO_CLIE, T1.CO_CLIE, T2.NO_AUXI, T1.CO_TIPO_DOCU, T1.NU_DOCU_CLIE')
RETURN


GO
